//1.0导入.vue核心包
import Vue from "vue";

//2.0导入App.vue的vue对象

import App from "./App.vue";

//3.0将vue-router集成到这个项目中来
import vueRouter from "vue-router";
//3.0.1将vueRdouter对象绑定到Vue对象上
Vue.use(vueRouter); //已经导入过核心包  下面就将vue-router绑定到vue对象上
//3.0.2 导入路由规则对应的组件对象
import home from "./components/home.vue";
import vip from "./components/vip.vue";
import shopcar from "./components/shopcar/car.vue";
import find from "./components/find.vue";

import newslist from "./components/news/newslist.vue";
import newsinfo from "./components/news/newsinfo.vue";
import photolist from "./components/photo/photolist.vue";
import goodslist from "./components/goods/goodslist.vue";

//3.0.3
var router1 = new vueRouter({
    linkActiveClass: "mui-active",
    routes: [ //路由规则
        { path: '/', redirect: '/home' }, //设置当服务器启动的时候默认进入home中
        { path: '/home', component: home },
        { path: '/vip', component: vip },
        { path: '/shopcar', component: shopcar },
        { path: '/find', component: find },

        { path: '/news/newslist', component: newslist },
        { path: '/news/newsinfo/:id', component: newsinfo },
        { path: '/photo/photolist', component: photolist },
        { path: '/goods/goodslist', component: goodslist }
    ]
});
// 4.0注册Mint-ui全部组件
import 'mint-ui/lib/style.css'; //导入里面的css组件
import mintui from "mint-ui"; //导入mui
Vue.use(mintui); //在Vue中全局使用mintui
//5.0注册 mui的css样式
import "../statics/mui/css/mui.css";
//6.0 导入一个当前系统的全局基本样式  
import "../statics/css/css.css"; //由于可能要重写mui里的样式 所以我们自己写的一定要在mui的css文件后面
//7.0将vue-resource 在vue中绑定 自动在vue对象实例上注入一个$http对象就可以使用ajax方法了
import vueResource from "vue-resource"; //导入vue-resource
//8.0 定义一个全局过滤器实现日期的格式化
import moment from "moment"
Vue.filter("datefmt", function(input, fmtstring) {
    //使用moment.js 这个日期格式化类库实现日期的格式化功能
    return moment(input).format(fmtstring);
})
Vue.use(vueResource); //用vue绑定 vue-resource
//5.0利用Vue对象进行解析渲染
new Vue({
    el: '#app',
    //使用路由对象实例
    router: router1, //vue-router插件里的使用路由对象的默认参数就是router 不能变  使用的对象是router1


    // render: function(create) {  create(app) }    //es5写法
    render: c => c(App) //es6语法  左边的c代表的是函数的参数  左边的c代表函数的方法体  中间用gose to （=>）分开
})